package com.itheima.dao;

import com.github.pagehelper.Page;
import com.itheima.pojo.Role;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Set;

public interface RoleDao {
    public Set<Role> findByUserId(Integer userId);

    void add(Role role);

    Page<Role> selectByCondition(@Param("queryString") String queryString);

    void deleteById(Integer id);

    void edit(Role role);

    Role findById(Integer id);

    List<Role> findAll();

    void deleteFromMenu(Integer id);

    void addMenu(@Param("roleId") Integer id, @Param("menuIds") Integer[] menuIds);

    void deleteFromPermission(Integer id);

    void addPermission(@Param("roleId") Integer id, @Param("permissionIds") Integer[] permissionIds);

    List<Integer> findMenuIdsByRoleId(Integer id);

    List<Integer> findPermissionIdsByRoleId(Integer id);
}
